STEP Release NotesFeb 27, 2004, version 1.1 |
|
Introduction --- What are new --- Installation --- How to use STEP --- Tool --- XSTEP --- Link |
STEP (Scripting Technology for Embodied Persona) is a scripting language for embodied agents, in particular for their communicative acts, like gestures, postures, and speech. STEP has been implemented in the distributed logic programming language DLP, a tool for the implementation of 3D web agents
2. Set the humanoid object properties in the file 'stepsetting.pl' and compile it (i.e, execute
the commandline: dlpc stepsetting.pl) Suppose the humanoid's name is 'myhumanoid'. For humanoid-object
one, add the following line in the file:
3. Design your own STEP script actions and add them into your STEP libraries.
The name of the main script library is the file 'stepscriptlib.pl'.
Note that do not change the object name or the file name of the main script library.
You can design your own script libraries with your own library object names, like my_own_scritplib.
However, you have to add the following library claim for it in the main script library:
script(ScriptAction, Action):-
Note that you have to compile all of your own script libraries.
Due to the limit of the Java virtual machine, the size of each script library cannot be large than
64KB after the compiling. Split a large library into multiple ones.
You can use the STEP authoring tools to design and test your own script actions, then add them
into the library. You can also use the XSTEP editor to design the actions in XSTEP and transfer them
in STEP/DLP codes, then copy them into the library file.
4. Design your own DLP application. The file 'steptest.pl' is a template for it.
Script actions can be called by the following predicates:
process_script(ScriptAction): execute the script action ScriptAction in the library.
Note that all of the scripts/script actions must be instantated ones when they are called. Keep
the step_kernel in the heading of your application object. Keep the following lines in the beginning
of your applications
text_area(BrowserStream),
The first two lines initialize the dlpbrow object, the third one sets the number of the maximal
threads, and the last line initializes the parallel processing in STEP engine.
5. Design an html file to launch your own application applet. Do not forget to have step_engine.jar
in the archive statement in the html file. The file 'stepdemo.html' is a template for it.
top
The file 'stepjsi.jar' is the STEP interface for Javascripts. In Javascripts,
adding a line like this:
Note that you have to use the Blaxxun VRML browser for STEP animation. Use only Microsoft Internet Explorer if you use Windows NT/2000/XP. Dis-enable SUN's Java 2 version 1.4.0 or higher for IE. It can be done by unchecking the selection on the Internet options under IE. Use the Microsoft Speech ActiveX for the STEP speech engine. You may have to change the security setting to allow the Microsoft speech ActiveX working for your IE.
What are new in the release 1.1
speak(Text): call the Microsoft Speech ActiveX for the TTS on the text.
Installation
How to use STEP in DLP
my_own_scriptlib <- script(ScriptAction,Action),!.
do_script(Script): execute the script Script.
set_output(BrowserStream),
set_max_threads(15),
script_threads,
STEP authoring tools
XSTEP
STEP interface for Javascripts
appletQueue( "term: command");
would call the STEP engine to execute certain tasks, where the command can be one of
the following methods.
STEP Script Libraries
The file steplib_touch.jar is a script library with the actions of touch based on inverse kinematics.
Library name: step_scriptlib_touch
Script actions:
touch_absolutePosition(Agent,position(X,Y,Z), Hand): The Agent would touch the position (X,Y,Z) with
a hand, where 'l' means the left hand, and 'r' means the right hand.
touch(Agent,position(X,Y,Z), Hand): The Agent would touch the position (X,Y,Z) which is relative to the body coordinate system with a hand.
touchValue(Agent,position(X,Y,Z), Hand, [ShoulderRotation,ElbowRotation,WristRotation]): Returning the rotation values
of the joints for the touch action (relative to the body coordinate).
Trouble Shooting
Links
Update Records
What are new in the release 1.0 (July 17, 2003)
par_turn(Agent,[body_direction(Body1,Direction1),...,body_direction(Bodym,Direcitonm)],Speed): uses
only one thread to achieve the parellel turn action:
par([turn(Agent,Body1,Direction1,Speed),...,turn(Agent,Bodym,Directionm,Speed)]).
What are new in the release 0.42 (April 2, 2003)
What are new in the release 0.41 (March 6, 2003)
What are new in the release 0.40 (Feb 4, 2003)
What are new in the release 0.38 (Septemper 24, 2002)
What are new in the release 0.37 (August 29, 2002)
What are new in the release 0.35 (June 13, 2002)
Contact Zhisheng Huang for comments, suggestions, or bug reporting.